from typing import Optional

from pydantic import Field
from pydantic_settings import BaseSettings

class SMSConfig(BaseSettings):
    """Settings for SMS"""

    # SMS
    SMS_ENABLE: bool = Field(False, description="Enable SMS")
    ALIBABA_CLOUD_ACCESS_KEY_ID: Optional[str] = Field(None, description="SMS Server API key")
    ALIBABA_CLOUD_ACCESS_KEY_SECRET: Optional[str] = Field(None, description="SMS Server key secret")
    SMS_ENDPOINT: Optional[str] = Field(None, description="SMS ENDPOINT")
    SMS_SIGN_NAME: Optional[str] = Field(None, description="SMS SIGN NAME")
    SMS_TEMPLATE_CODE: Optional[str] = Field(None, description="SMS TEMPLATE CODE")

    # System
    ACCOUNT_EMAIL_SUFFIX: str = Field("@qingyi.com", description="Account email prefix")